The Internet is a global system of interconnected computers and computer networks that use a standard Internet protocol suite (e.g., the Transmission Control Protocol (TCP) and Internet Protocol (IP)) to communicate with each other. The Internet of Things (IoT) is based on the idea that everyday objects, not just computers and computer networks, can be readable, recognizable, locatable, addressable, and controllable via an IoT communications network (e.g., an ad-hoc system or the Internet). A number of market trends are driving development of IoT devices. For example, increasing energy costs are driving governments' strategic investments in smart grids and support for future consumption, such as for electric vehicles and public charging stations. Increasing health care costs and aging populations are driving development for remote/connected health care and fitness services. A technological revolution in the home is driving development for new “smart” services, including consolidation by service providers marketing ‘N’ play (e.g., data, voice, video, security, energy management, etc.) and expanding home networks. Buildings are getting smarter and more convenient as a means to reduce operational costs for enterprise facilities.
There are a number of key applications for the IoT. For example, in the area of smart grids and energy management, utility companies can optimize delivery of energy to homes and businesses while customers can better manage energy usage. In the area of home and building automation, smart homes and buildings can have centralized control over virtually any device or system in the home or office, from appliances to plug-in electric vehicle (PEV) security systems. In the field of asset tracking, enterprises, hospitals, factories, and other large organizations can accurately track the locations of high-value equipment, patients, vehicles, and so on. In the area of health and wellness, doctors can remotely monitor patients' health while people can track the progress of fitness routines.
As such, in the near future, increasing development in IoT technologies will lead to numerous IoT devices surrounding a user at home, in vehicles, at work, and many other locations. Due at least in part to the potentially large number of heterogeneous IoT devices and other physical objects that may be in use within a controlled IoT network, which may interact with one another and/or be used in many different ways, well-defined and reliable communication interfaces are generally needed to connect the various heterogeneous IoT devices such that the various heterogeneous IoT devices can be appropriately configured, managed, and communicate with one another to exchange information. However, to the extent that certain existing communication frameworks can abstract and simplify adding IoT connectivity to existing devices, implementing the communication frameworks tends to be a tedious and error-prone process. For example, a non-connected “thing” that needs to be connected to an IoT network and/or other IoT devices will typically have a processor, most likely a micro-controller unit (MCU), which needs to be connected to the IoT network and/or the other IoT devices in order to make the non-connected thing a connected IoT device. Accordingly, in order to implement an appropriate communication framework and add connectivity to the non-connected thing, a manufacturer or developer has to learn the communication framework and define the relevant services, interfaces, configurations, methods, and logic associated with the communication framework.
Furthermore, not only do custom connectivity solutions require significant resources and tend to lack scalability to meet different end-uses, many original equipment manufacturers (OEMs) already have products with significant investments in incumbent MCU/processing and developing environments and therefore desire to have a “buttoned-up” connectivity solution that can be leveraged within existing development environments and from existing MCU/processor designs. As such, OEMs are seeking modular connectivity solutions that can be used across various heterogeneous products rather than a per-product connectivity paradigm. Nonetheless, despite the fact that OEMs desire low-cost and simple connectivity solutions that can implement multiple IoT solutions due to the dynamic nature of this emerging technology, existing connectivity solutions have fallen short in meeting the market demand.